<?php defined('BASEPATH') OR exit('No direct script access allowed');

/**
 * M_users
 *
 * This is an M_users of a few basic users interaction methods you could use
 * all done with a hardcoded array.
 *
 * @package		CodeIgniter
 * @subpackage	Rest Server
 * @category	Controller
 * @author		Phil Sturgeon
 
*/

// This can be removed if you use __autoload() in config.php OR use Modular Extensions
require APPPATH.'/libraries/REST_Controller.php';

class Musers extends REST_Controller
{
	function __construct()
	{
		parent::__construct();
		$this->load->model('mdl_users');
		
	}
	
	function users_get()
    {
        
		
		$rows = array();
		$users = array();
		
		
		$page=$this->get('page');
		$limit=$this->get('lim');
		$key=$this->get('key');
		$value=$this->get('val');
		$countitem = 0;
		if (($key!=null) && ($page!=null) ){
			
			$arrwhere=$key." LIKE '%".$value."%'";
			$query = $this->mdl_users->get_item($limit, $page, $arrwhere);
			$countitem = $this->mdl_users->get_countitem($arrwhere);
		}elseif($limit!=null){
		
			$query = $this->mdl_users->get_item($limit, $page);
			$countitem = $this->mdl_users->get_countitem();
		}else{
			$query = $this->mdl_users->get_item();
			$countitem = $this->mdl_users->get_countitem();
		}
		
		if ($query->num_rows() > 0)
		{
			
			$i=0;
			foreach($query->result_array() as $row)
			{
				$rows[$i]['userid'] = $row['userid'];
				$rows[$i]['username'] = $row['username'];
				$rows[$i]['password'] = $row['password'];
				$rows[$i]['level_id'] = $row['level_id'];

				$i++;
			}
			$data = array(
				'countitem' => $countitem,
				'datas' => $rows
				
			);
		}
		
		//print_r($data);
		
        if($data)
        {
            $this->response($data, 200); // 200 being the HTTP response code
        }

        else
        {
            $this->response(array('error' => 'Items could not be found'), 404);
        } 
    }
    
    function users_post()
    {
        //$this->some_model->updateusers( $this->get('id') );
        /* */
		
		$data['username']=$this->post('username'); 
$data['password']=$this->post('password'); 
$data['level_id']=$this->post('level_id'); 



		$query = $this->mdl_users->insert($data);
		
	
		if ($query){
			
			$this->response(array('status' => '1'),200);
		}else{
			$this->response(array('status' => '0'));
		}

    }
	
	
	function check_users_post(){
		       //$this->some_model->updateusers( $this->get('id') );
        /* */
		
		
		
		$username=$this->post('username'); 
		$password=$this->post('password'); 
		$level_id=$this->post('level_id'); 
		$encrypt=md5($username.$password);
		$arrwhere="username = '" . $username . "' and password = '" . $encrypt . "'";
		$query = $this->mdl_users->get_item(0, 0, $arrwhere);
		$data = '';
		$check = 0;
		if ($query->num_rows() > 0)
		{
			
			$i=0;
			foreach($query->result_array() as $row)
			{
				$rows[$i]['userid'] = $row['userid'];
				$rows[$i]['username'] = $row['username'];
				$rows[$i]['password'] = $row['password'];
				$rows[$i]['level_id'] = $row['level_id'];

				$i++;
			}
			$data = array(
				'datas' => $rows
			);
			
			$check = 1;
		}
		
	
		if ($check){
			$this->response(array('status' => '1','data' => $data),200);
		}else{
			$this->response(array('status' => '0'));
		}

	}
    
    function users_delete()
    {
		
    	//$this->some_model->deletesomething( $this->get('id') );$this->_get('id')
        $message = array('message' => 'DELETED!', 'id'=>$this->delete('id'));
		
		$query = $this->mdl_users->delete($this->delete('id'));
		//$this->response($message,200);
		//$query=1;
		if ($query){
			$this->response(array('status' => 1),200);
		
		}else{
			$this->response(array('status' => 0));
		}
      
    }
	
	 function users_put()
    {
		
    	//$this->some_model->deletesomething( $this->get('id') );$this->_get('id')
        //$message = array('message' => 'UPDATE!', 'userid'=>$this->delete('userid'), 'name'=>$this->delete('name'));
		$data['userid']=$this->put('userid'); 
$data['username']=$this->put('username'); 
$data['password']=$this->put('password'); 
$data['level_id']=$this->put('level_id'); 

		$query = $this->mdl_users->update($data['userid'],$data);
		//$this->response($message,200);
		
		if ($query){
			$this->response(array('status' => 1),200);
		
		}else{
			$this->response(array('status' => 0));
		}
      
    }
    
    function userss_get()
    {
        //$userss = $this->some_model->getSomething( $this->get('limit') );
        $userss = array(
			array('id' => 1, 'name' => 'Some Guy', 'email' => 'example1@example.com'),
			array('id' => 2, 'name' => 'Person Face', 'email' => 'example2@example.com'),
			3 => array('id' => 3, 'name' => 'Scotty', 'email' => 'example3@example.com', 'fact' => array('hobbies' => array('fartings', 'bikes'))),
		);
        
        if($userss)
        {
            $this->response($userss, 200); // 200 being the HTTP response code
        }

        else
        {
            $this->response(array('error' => 'Couldn\'t find any items!'), 404);
        }
    }


	public function send_post()
	{
		var_dump($this->request->body);
	}


	public function send_put()
	{
		var_dump($this->put('foo'));
	}
}